[INFO] cloning repository https://github.com/jwmasekre/2d20-fallout-character-builder-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jwmasekre/2d20-fallout-character-builder-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwmasekre%2F2d20-fallout-character-builder-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwmasekre%2F2d20-fallout-character-builder-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 82a3b406317f7deb688f751b9833b5beff9f1ee1
[INFO] checking jwmasekre/2d20-fallout-character-builder-rust against try#a611f2a14e38407ec6717a86a01424ee6fc80762 for pr-154992
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwmasekre%2F2d20-fallout-character-builder-rust" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jwmasekre/2d20-fallout-character-builder-rust
[INFO] finished tweaking git repo https://github.com/jwmasekre/2d20-fallout-character-builder-rust
[INFO] tweaked toml for git repo https://github.com/jwmasekre/2d20-fallout-character-builder-rust written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jwmasekre/2d20-fallout-character-builder-rust on toolchain a611f2a14e38407ec6717a86a01424ee6fc80762
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a611f2a14e38407ec6717a86a01424ee6fc80762" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jwmasekre/2d20-fallout-character-builder-rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a611f2a14e38407ec6717a86a01424ee6fc80762" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: /workspace/builds/worker-0-tc2/source/fallout-2d20-core/Cargo.toml: unused manifest key: dependencies.sqlx.feature
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+a611f2a14e38407ec6717a86a01424ee6fc80762" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f5c708c0ddaa1864672545f1cde2336dc254ea1b6d0f57f05d5df5a60c0a2bae
[INFO] running `Command { std: "docker" "start" "-a" "f5c708c0ddaa1864672545f1cde2336dc254ea1b6d0f57f05d5df5a60c0a2bae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f5c708c0ddaa1864672545f1cde2336dc254ea1b6d0f57f05d5df5a60c0a2bae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5c708c0ddaa1864672545f1cde2336dc254ea1b6d0f57f05d5df5a60c0a2bae", kill_on_drop: false }`
[INFO] [stdout] f5c708c0ddaa1864672545f1cde2336dc254ea1b6d0f57f05d5df5a60c0a2bae
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+a611f2a14e38407ec6717a86a01424ee6fc80762" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e7c2c981b0ed9a52ceb4015fb6e284c4b5ede8e9c0b104833ffbbfe5b84d85a4
[INFO] running `Command { std: "docker" "start" "-a" "e7c2c981b0ed9a52ceb4015fb6e284c4b5ede8e9c0b104833ffbbfe5b84d85a4", kill_on_drop: false }`
[INFO] [stderr] warning: /opt/rustwide/workdir/fallout-2d20-core/Cargo.toml: unused manifest key: dependencies.sqlx.feature
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]     Checking chlorine v1.0.13
[INFO] [stderr]     Checking mint v0.5.9
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling sdl2 v0.36.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling imgui-opengl-renderer v0.12.1
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling sdl2-sys v0.36.0
[INFO] [stderr]    Compiling imgui-sys v0.11.0
[INFO] [stderr]    Compiling gl v0.10.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]     Checking imgui v0.11.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking fallout-2d20-core v0.1.1 (/opt/rustwide/workdir/fallout-2d20-core)
[INFO] [stderr]     Checking sqlx-sqlite v0.8.6
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-core/src/character.rs:683:9
[INFO] [stdout]     |
[INFO] [stdout] 683 |     let mut legendary_by_char_weapon: HashMap<i16, WeaponLegendary> =
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `char_weapon_legendary_rows`
[INFO] [stdout]    --> fallout-2d20-core/src/character.rs:611:5
[INFO] [stdout]     |
[INFO] [stdout] 611 |     char_weapon_legendary_rows: Vec<CharacterWeaponLegendaryRow>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_char_weapon_legendary_rows`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn into_full(self, rules: &RulesBundle) -> Result<FullCharacter, String> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |     rules: &RulesBundle, // your in-memory rules (weapons, apparel, perks, etc.)
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |     let data = fs::read_to_string(path)?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `character`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn save_character_to_json(character: &FullCharacter) -> Result<String, Box<dyn Error>> { todo!("FullCharacterSave::from(characte...
[INFO] [stdout]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:25:33
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn load_character_from_json(json: &str, rules: &RulesBundle) -> Result<FullCharacter, Box<dyn Error>> { todo!("serde_json::from_...
[INFO] [stdout]    |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:25:45
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn load_character_from_json(json: &str, rules: &RulesBundle) -> Result<FullCharacter, Box<dyn Error>> { todo!("serde_json::from_...
[INFO] [stdout]    |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-core/src/character.rs:683:9
[INFO] [stdout]     |
[INFO] [stdout] 683 |     let mut legendary_by_char_weapon: HashMap<i16, WeaponLegendary> =
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `char_weapon_legendary_rows`
[INFO] [stdout]    --> fallout-2d20-core/src/character.rs:611:5
[INFO] [stdout]     |
[INFO] [stdout] 611 |     char_weapon_legendary_rows: Vec<CharacterWeaponLegendaryRow>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_char_weapon_legendary_rows`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn into_full(self, rules: &RulesBundle) -> Result<FullCharacter, String> {
[INFO] [stdout]     |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 288 |     rules: &RulesBundle, // your in-memory rules (weapons, apparel, perks, etc.)
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> fallout-2d20-core/src/save.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |     let data = fs::read_to_string(path)?;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `character`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn save_character_to_json(character: &FullCharacter) -> Result<String, Box<dyn Error>> { todo!("FullCharacterSave::from(characte...
[INFO] [stdout]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:25:33
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn load_character_from_json(json: &str, rules: &RulesBundle) -> Result<FullCharacter, Box<dyn Error>> { todo!("serde_json::from_...
[INFO] [stdout]    |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_json`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rules`
[INFO] [stdout]   --> fallout-2d20-core/src/lib.rs:25:45
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn load_character_from_json(json: &str, rules: &RulesBundle) -> Result<FullCharacter, Box<dyn Error>> { todo!("serde_json::from_...
[INFO] [stdout]    |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_rules`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking imgui-sdl2 v0.15.3
[INFO] [stderr]     Checking fallout-2d20-gui v0.1.3 (/opt/rustwide/workdir/fallout-2d20-gui)
[INFO] [stdout] warning: unused imports: `MutantType` and `SpecialState`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/skills.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::screens::special::{SpecialState, MutantType};
[INFO] [stdout]   |                               ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MutantType` and `SpecialState`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/skills.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::screens::special::{SpecialState, MutantType};
[INFO] [stdout]   |                               ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/perks.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/perks.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_placeholder`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/stats.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{AppScreen, render_placeholder};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_placeholder`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/equipment.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{db::Db, render_placeholder, screens::skills::SKILLS};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_placeholder`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/stats.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{AppScreen, render_placeholder};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BAR_HEIGHT`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/equipment.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{AppScreen, BAR_HEIGHT};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_placeholder`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/equipment.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{db::Db, render_placeholder, screens::skills::SKILLS};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BAR_HEIGHT`
[INFO] [stdout]  --> fallout-2d20-gui/src/screens/equipment.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{AppScreen, BAR_HEIGHT};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_increase`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/special.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let can_increase = base < max && (remaining > 0 || false);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_increase`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disabled`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/special.rs:304:17
[INFO] [stdout]     |
[INFO] [stdout] 304 |             let disabled = at_limit || at_cap;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_disabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_skill`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |     let col_skill  = 0.0_f32;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_skill`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_rank_base`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |     let max_rank_base = state.max_rank();
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_rank_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_increase`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/special.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let can_increase = base < max && (remaining > 0 || false);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_increase`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disabled`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/special.rs:304:17
[INFO] [stdout]     |
[INFO] [stdout] 304 |             let disabled = at_limit || at_cap;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_disabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_skill`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |     let col_skill  = 0.0_f32;
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_skill`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_rank_base`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:331:9
[INFO] [stdout]     |
[INFO] [stdout] 331 |     let max_rank_base = state.max_rank();
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_rank_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_h`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:466:13
[INFO] [stdout]     |
[INFO] [stdout] 466 |         let row_h = 80.0_f32;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_row_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:672:17
[INFO] [stdout]     |
[INFO] [stdout] 672 |             let mut mode_val = matches!(mode, SkilledMode::OneToTwo);
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     window: &Window,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/stats.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         7..8   => 1,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `8_i32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `7_i32..=8_i32`
[INFO] [stdout] 16 |         9..10  => 2,
[INFO] [stdout]    |         ----- this could appear to continue range `7_i32..8_i32`, but `8_i32` isn't matched by either of them
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_contiguous_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     state: &mut ComputedStats,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let state = compute_stats(special, traits, perks);
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col2`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let col2 = (w - 16.0) * 0.5;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_col2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_h`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:466:13
[INFO] [stdout]     |
[INFO] [stdout] 466 |         let row_h = 80.0_f32;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_row_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:672:17
[INFO] [stdout]     |
[INFO] [stdout] 672 |             let mut mode_val = matches!(mode, SkilledMode::OneToTwo);
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/perks.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 598 |     window: &Window,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple ranges are one apart
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/stats.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         7..8   => 1,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         this range doesn't match `8_i32` because `..` is an exclusive range
[INFO] [stdout]    |         help: use an inclusive range instead: `7_i32..=8_i32`
[INFO] [stdout] 16 |         9..10  => 2,
[INFO] [stdout]    |         ----- this could appear to continue range `7_i32..8_i32`, but `8_i32` isn't matched by either of them
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_contiguous_range_endpoints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     state: &mut ComputedStats,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let state = compute_stats(special, traits, perks);
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col2`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/stats.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |     let col2 = (w - 16.0) * 0.5;
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_col2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:489:13
[INFO] [stdout]     |
[INFO] [stdout] 489 |         let mut sibling_alts: Vec<i64> = sibling_ids.iter()
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:489:13
[INFO] [stdout]     |
[INFO] [stdout] 489 |         let mut sibling_alts: Vec<i64> = sibling_ids.iter()
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `damage_type` is assigned to, but never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |         let mut damage_type = row.dtype.clone().unwrap_or_default();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_damage_type` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `damage_type` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:873:59
[INFO] [stdout]     |
[INFO] [stdout] 873 |                         ModEffect::SetDamageType(dt) => { damage_type = dt; }
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `damage_type` is assigned to, but never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:799:13
[INFO] [stdout]     |
[INFO] [stdout] 799 |         let mut damage_type = row.dtype.clone().unwrap_or_default();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_damage_type` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `damage_type` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:873:59
[INFO] [stdout]     |
[INFO] [stdout] 873 |                         ModEffect::SetDamageType(dt) => { damage_type = dt; }
[INFO] [stdout]     |                                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1458:9
[INFO] [stdout]      |
[INFO] [stdout] 1458 |     let preview = state.selected_bg_idx
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1638:17
[INFO] [stdout]      |
[INFO] [stdout] 1638 |             let mut take_one = chosen == 0;
[INFO] [stdout]      |                 ----^^^^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `preview`
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1458:9
[INFO] [stdout]      |
[INFO] [stdout] 1458 |     let preview = state.selected_bg_idx
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_preview`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1638:17
[INFO] [stdout]      |
[INFO] [stdout] 1638 |             let mut take_one = chosen == 0;
[INFO] [stdout]      |                 ----^^^^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Limb::Body  => 4, 
[INFO] [stdout]     |         ---------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 220 |         Limb::Body => 11, 
[INFO] [stdout]     |         ^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         Limb::Wheel  => 6, 
[INFO] [stdout]     |         ----------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 222 |         Limb::Wheel => 13, 
[INFO] [stdout]     |         ^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |         _  => 0,
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |         Limb::Head  => 1, 
[INFO] [stdout]     |         ---------- matches some of the same values
[INFO] [stdout] 207 |         Limb::ArmLeft  => 2, 
[INFO] [stdout]     |         ------------- matches some of the same values
[INFO] [stdout] 208 |         Limb::ArmRight  => 3, 
[INFO] [stdout]     |         -------------- matches some of the same values
[INFO] [stdout] 209 |         Limb::Torso  => 4,
[INFO] [stdout]     |         ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 223 |         _  => 0,
[INFO] [stdout]     |         ^ ...and 11 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |         Limb::Body  => 4, 
[INFO] [stdout]     |         ---------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 220 |         Limb::Body => 11, 
[INFO] [stdout]     |         ^^^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 215 |         Limb::Wheel  => 6, 
[INFO] [stdout]     |         ----------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 222 |         Limb::Wheel => 13, 
[INFO] [stdout]     |         ^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |         _  => 0,
[INFO] [stdout]     |         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |         Limb::Head  => 1, 
[INFO] [stdout]     |         ---------- matches some of the same values
[INFO] [stdout] 207 |         Limb::ArmLeft  => 2, 
[INFO] [stdout]     |         ------------- matches some of the same values
[INFO] [stdout] 208 |         Limb::ArmRight  => 3, 
[INFO] [stdout]     |         -------------- matches some of the same values
[INFO] [stdout] 209 |         Limb::Torso  => 4,
[INFO] [stdout]     |         ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 223 |         _  => 0,
[INFO] [stdout]     |         ^ ...and 11 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gap`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:547:9
[INFO] [stdout]     |
[INFO] [stdout] 547 |     let gap = 8.0;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_gap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gap`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:547:9
[INFO] [stdout]     |
[INFO] [stdout] 547 |     let gap = 8.0;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_gap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:979:13
[INFO] [stdout]     |
[INFO] [stdout] 979 |         let mut lines: Vec<(&str, Vec<InventoryLine>)> = vec![];
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id_col_w`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:656:9
[INFO] [stdout]     |
[INFO] [stdout] 656 |     let id_col_w = w / 2.0 - 24.0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_id_col_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:716:13
[INFO] [stdout]     |
[INFO] [stdout] 716 |         let base = special.base_values()[i];
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lines`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:979:13
[INFO] [stdout]     |
[INFO] [stdout] 979 |         let mut lines: Vec<(&str, Vec<InventoryLine>)> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:979:13
[INFO] [stdout]     |
[INFO] [stdout] 979 |         let mut lines: Vec<(&str, Vec<InventoryLine>)> = vec![];
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id_col_w`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:656:9
[INFO] [stdout]     |
[INFO] [stdout] 656 |     let id_col_w = w / 2.0 - 24.0;
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_id_col_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:716:13
[INFO] [stdout]     |
[INFO] [stdout] 716 |         let base = special.base_values()[i];
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lines`
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:979:13
[INFO] [stdout]     |
[INFO] [stdout] 979 |         let mut lines: Vec<(&str, Vec<InventoryLine>)> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `condition`
[INFO] [stdout]    --> fallout-2d20-gui/src/main.rs:349:17
[INFO] [stdout]     |
[INFO] [stdout] 349 |             let condition = if ui.is_mouse_released(imgui::MouseButton::Left) {
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_condition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `origin_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/new_character.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct TraitRow {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 21 |     pub id: i64,
[INFO] [stdout] 22 |     pub origin_id: i64,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TraitRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `has_gifted_trait` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/new_character.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct NewCharacterState {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub has_gifted_trait: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_tag_standard` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout]  71 | impl SkillsState {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn can_tag_standard(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `has_companion` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/stats.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct ComputedStats {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub has_companion: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct WeaponRow {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 30 |     pub id: i64,
[INFO] [stdout] 31 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WeaponRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct ApparelRow {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 41 |     pub id: i64,
[INFO] [stdout] 42 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApparelRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct ConsumableRow {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 50 |     pub id: i64,
[INFO] [stdout] 51 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConsumableRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct RobotModuleRow {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 60 |     pub id: i64,
[INFO] [stdout] 61 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RobotModuleRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ammo_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct AmmoRow {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 69 |     pub ammo_id: i64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AmmoRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gear_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct GearRow {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 77 |     pub gear_id: i64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GearRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `weapon_id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct WeaponOption {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 128 |     pub bg_weapon_id: i64,
[INFO] [stdout] 129 |     pub weapon_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WeaponOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SingleOrPack` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub enum ApparelSlot {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 160 |     SingleOrPack {
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ApparelSlot` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bg_consumable_id` and `consumable_id` are never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct ConsumableOption {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 168 |     pub bg_consumable_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 169 |     pub consumable_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConsumableOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bg_module_id` and `module_id` are never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct RobotModuleOption {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 183 |     pub bg_module_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 184 |     pub module_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RobotModuleOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct ResolvedBackground {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 196 |     pub id: i64,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResolvedBackground` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:941:14
[INFO] [stdout]     |
[INFO] [stdout] 941 |     AddRange(i32),               // "+X Range"
[INFO] [stdout]     |     -------- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 941 -     AddRange(i32),               // "+X Range"
[INFO] [stdout] 941 +     AddRange(()),               // "+X Range"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:942:14
[INFO] [stdout]     |
[INFO] [stdout] 942 |     SubRange(i32),               // "-X Range"
[INFO] [stdout]     |     -------- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 942 -     SubRange(i32),               // "-X Range"
[INFO] [stdout] 942 +     SubRange(()),               // "-X Range"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:945:16
[INFO] [stdout]     |
[INFO] [stdout] 945 |     AllowsMods(String),          // "Allows X Mods"
[INFO] [stdout]     |     ---------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 945 -     AllowsMods(String),          // "Allows X Mods"
[INFO] [stdout] 945 +     AllowsMods(()),          // "Allows X Mods"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:946:15
[INFO] [stdout]     |
[INFO] [stdout] 946 |     AddWeapon(String),           // "Add X weapon"
[INFO] [stdout]     |     --------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 946 -     AddWeapon(String),           // "Add X weapon"
[INFO] [stdout] 946 +     AddWeapon(()),           // "Add X weapon"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:948:13
[INFO] [stdout]     |
[INFO] [stdout] 948 |     SetAmmo(String),             // "Ammo = X"
[INFO] [stdout]     |     ------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 948 -     SetAmmo(String),             // "Ammo = X"
[INFO] [stdout] 948 +     SetAmmo(()),             // "Ammo = X"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_selections_generic` is never used
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1326:4
[INFO] [stdout]      |
[INFO] [stdout] 1326 | fn default_selections_generic(len: usize) -> Vec<SlotSelection> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `APPAREL_TYPE_POWERARMOR` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub const APPAREL_TYPE_POWERARMOR: i64 = 5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `APPAREL_TYPE_ROBOTARMOR` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:132:11
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub const APPAREL_TYPE_ROBOTARMOR: i64 = 6;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LimbDr` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct LimbDr {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct EquippedApparel {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 153 |     pub id: i64,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DamageResistanceState` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:158:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct DamageResistanceState {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `rebuild` are never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:229:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl DamageResistanceState {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 229 |     pub fn new(is_robot: bool, trait_ids: &[i64]) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn rebuild(&mut self, is_robot: bool, trait_ids: &[i64]) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weapon_display_name` is never used
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/review.rs:1133:4
[INFO] [stdout]      |
[INFO] [stdout] 1133 | fn weapon_display_name(opt: &crate::screens::equipment::WeaponOption) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `condition`
[INFO] [stdout]    --> fallout-2d20-gui/src/main.rs:349:17
[INFO] [stdout]     |
[INFO] [stdout] 349 |             let condition = if ui.is_mouse_released(imgui::MouseButton::Left) {
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_condition`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `origin_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/new_character.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct TraitRow {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 21 |     pub id: i64,
[INFO] [stdout] 22 |     pub origin_id: i64,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TraitRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `has_gifted_trait` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/new_character.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct NewCharacterState {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub has_gifted_trait: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_tag_standard` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/skills.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout]  71 | impl SkillsState {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn can_tag_standard(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `has_companion` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/stats.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct ComputedStats {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub has_companion: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct WeaponRow {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 30 |     pub id: i64,
[INFO] [stdout] 31 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WeaponRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct ApparelRow {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 41 |     pub id: i64,
[INFO] [stdout] 42 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ApparelRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct ConsumableRow {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 50 |     pub id: i64,
[INFO] [stdout] 51 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConsumableRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bg_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct RobotModuleRow {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 60 |     pub id: i64,
[INFO] [stdout] 61 |     pub bg_id: i64,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RobotModuleRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ammo_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub struct AmmoRow {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 69 |     pub ammo_id: i64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AmmoRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gear_id` is never read
[INFO] [stdout]   --> fallout-2d20-gui/src/screens/equipment.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct GearRow {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 77 |     pub gear_id: i64,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GearRow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `weapon_id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct WeaponOption {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 128 |     pub bg_weapon_id: i64,
[INFO] [stdout] 129 |     pub weapon_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WeaponOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SingleOrPack` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub enum ApparelSlot {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 160 |     SingleOrPack {
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ApparelSlot` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bg_consumable_id` and `consumable_id` are never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct ConsumableOption {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] 168 |     pub bg_consumable_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 169 |     pub consumable_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConsumableOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bg_module_id` and `module_id` are never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct RobotModuleOption {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 183 |     pub bg_module_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 184 |     pub module_id: i64,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RobotModuleOption` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub struct ResolvedBackground {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 196 |     pub id: i64,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResolvedBackground` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:941:14
[INFO] [stdout]     |
[INFO] [stdout] 941 |     AddRange(i32),               // "+X Range"
[INFO] [stdout]     |     -------- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 941 -     AddRange(i32),               // "+X Range"
[INFO] [stdout] 941 +     AddRange(()),               // "+X Range"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:942:14
[INFO] [stdout]     |
[INFO] [stdout] 942 |     SubRange(i32),               // "-X Range"
[INFO] [stdout]     |     -------- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 942 -     SubRange(i32),               // "-X Range"
[INFO] [stdout] 942 +     SubRange(()),               // "-X Range"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:945:16
[INFO] [stdout]     |
[INFO] [stdout] 945 |     AllowsMods(String),          // "Allows X Mods"
[INFO] [stdout]     |     ---------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 945 -     AllowsMods(String),          // "Allows X Mods"
[INFO] [stdout] 945 +     AllowsMods(()),          // "Allows X Mods"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:946:15
[INFO] [stdout]     |
[INFO] [stdout] 946 |     AddWeapon(String),           // "Add X weapon"
[INFO] [stdout]     |     --------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 946 -     AddWeapon(String),           // "Add X weapon"
[INFO] [stdout] 946 +     AddWeapon(()),           // "Add X weapon"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/equipment.rs:948:13
[INFO] [stdout]     |
[INFO] [stdout] 948 |     SetAmmo(String),             // "Ammo = X"
[INFO] [stdout]     |     ------- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ModEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 948 -     SetAmmo(String),             // "Ammo = X"
[INFO] [stdout] 948 +     SetAmmo(()),             // "Ammo = X"
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_selections_generic` is never used
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/equipment.rs:1326:4
[INFO] [stdout]      |
[INFO] [stdout] 1326 | fn default_selections_generic(len: usize) -> Vec<SlotSelection> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `APPAREL_TYPE_POWERARMOR` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub const APPAREL_TYPE_POWERARMOR: i64 = 5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `APPAREL_TYPE_ROBOTARMOR` is never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:132:11
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub const APPAREL_TYPE_ROBOTARMOR: i64 = 6;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LimbDr` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct LimbDr {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct EquippedApparel {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 153 |     pub id: i64,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DamageResistanceState` is never constructed
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:158:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct DamageResistanceState {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `rebuild` are never used
[INFO] [stdout]    --> fallout-2d20-gui/src/screens/review.rs:229:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl DamageResistanceState {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 229 |     pub fn new(is_robot: bool, trait_ids: &[i64]) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn rebuild(&mut self, is_robot: bool, trait_ids: &[i64]) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weapon_display_name` is never used
[INFO] [stdout]     --> fallout-2d20-gui/src/screens/review.rs:1133:4
[INFO] [stdout]      |
[INFO] [stdout] 1133 | fn weapon_display_name(opt: &crate::screens::equipment::WeaponOption) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 48s
[INFO] running `Command { std: "docker" "inspect" "e7c2c981b0ed9a52ceb4015fb6e284c4b5ede8e9c0b104833ffbbfe5b84d85a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7c2c981b0ed9a52ceb4015fb6e284c4b5ede8e9c0b104833ffbbfe5b84d85a4", kill_on_drop: false }`
[INFO] [stdout] e7c2c981b0ed9a52ceb4015fb6e284c4b5ede8e9c0b104833ffbbfe5b84d85a4
